let arr = [1,2,3]
let proxy = new Proxy(arr, {
  set(v,v2,v3,v4) {
    // 原先的值[1, 2, 3]   之前的值1 设置的值6   返回的对象Proxy {0: 1, 1: 2, 2: 3}
    // if(v2 === 'length') return true
    // console.log('设置了', v,v2,v3,v4)
    // v[v2] = v3
    // 定义 Proxy 代理对象的 set 的时候，要返回 return true 。
    // 要不然就会报错   TypeError: 'set' on proxy: trap returned falsish for property '3'
    console.log('设置的key', v2)
    return Reflect.set(v, v2, v3)
  },
  get(target, key) {
    console.log(key)
    // Reflect  get set 对应
    console.log('获取 ')
    // return target[key]
    return Reflect.get(target, key)
  }
})
// 这边要注意 操作的要是 返回的proxy
// 
console.log(proxy.push(2))